package com.zone.service.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.zone.common.core.annotation.Excel;
import com.zone.common.core.web.domain.BaseEntity;

/**
 * 物品领用单对象 zone_supplies_form
 * 
 * @author liuyang
 * @date 2025-11-19
 */
public class SuppliesForm extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 物品领用id */
    private Long id;

    /** 任务执行日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "任务执行日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date taskDate;

    /** 出库类型 */
    @Excel(name = "出库类型")
    private String outType;

    /** 路线ID（当出库类型为1或2的时候，分别对应zone_route表中的id） */
    @Excel(name = "路线ID", readConverterExp = "当=出库类型为1或2的时候，分别对应zone_route表中的id")
    private Long routeId;

    /** 任务id */
    @Excel(name = "任务id")
    private Long taskId;

    /** 押运物品 */
    @Excel(name = "押运物品")
    private String suppliersList;

    /** 任务状态 */
    @Excel(name = "任务状态")
    private String status;

    /** 库房管理员 */
    @Excel(name = "库房管理员")
    private Long deliverBy;

    /** 领用时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "领用时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date receiveTime;

    /** 领用者 */
    @Excel(name = "领用者")
    private Long receiveBy;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }

    public void setTaskDate(Date taskDate) 
    {
        this.taskDate = taskDate;
    }

    public Date getTaskDate() 
    {
        return taskDate;
    }

    public void setOutType(String outType) 
    {
        this.outType = outType;
    }

    public String getOutType() 
    {
        return outType;
    }

    public void setRouteId(Long routeId) 
    {
        this.routeId = routeId;
    }

    public Long getRouteId() 
    {
        return routeId;
    }

    public void setTaskId(Long taskId) 
    {
        this.taskId = taskId;
    }

    public Long getTaskId() 
    {
        return taskId;
    }

    public void setSuppliersList(String suppliersList) 
    {
        this.suppliersList = suppliersList;
    }

    public String getSuppliersList() 
    {
        return suppliersList;
    }

    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }

    public void setDeliverBy(Long deliverBy) 
    {
        this.deliverBy = deliverBy;
    }

    public Long getDeliverBy() 
    {
        return deliverBy;
    }

    public void setReceiveTime(Date receiveTime) 
    {
        this.receiveTime = receiveTime;
    }

    public Date getReceiveTime() 
    {
        return receiveTime;
    }

    public void setReceiveBy(Long receiveBy) 
    {
        this.receiveBy = receiveBy;
    }

    public Long getReceiveBy() 
    {
        return receiveBy;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("taskDate", getTaskDate())
            .append("outType", getOutType())
            .append("routeId", getRouteId())
            .append("taskId", getTaskId())
            .append("suppliersList", getSuppliersList())
            .append("status", getStatus())
            .append("deliverBy", getDeliverBy())
            .append("receiveTime", getReceiveTime())
            .append("receiveBy", getReceiveBy())
            .toString();
    }
}
